#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<string>
#include<algorithm>
#include<vector>
using namespace std;

//int main() {
//    int a;
//    while (cin >> a)
//    {
//        string s = to_string(a);
//        reverse(s.begin(), s.end());
//
//        string ret;
//        string::iterator it = s.begin();
//        while (it != s.end())
//        {
//            int n = 3;
//            while (n-- && it != s.end())
//            {
//                ret.push_back(*it);
//                ++it;
//            }
//            if (it != s.end())
//                ret.push_back(',');
//        }
//        reverse(ret.begin(), ret.end());
//        cout << ret << endl;
//    }
//    return 0;
//}


//int main() {
//    int a;
//    while (cin >> a)
//    {
//        if (a == 0 || a == 1)
//            cout << 1 << endl;
//        else if (a == 2) cout << 2 << endl;
//        else
//        {
//            int last_last = 1;
//            int last = 2;
//            int cur = 3;
//            for (int i = 3; i < a; ++i) {
//                last_last = last;
//                last = cur;
//                cur = last_last + last;
//            }
//            cout << cur << endl;
//        }
//    }
//    return 0;
//}


class Solution {
public:

    bool IsContinuous(vector<int>& numbers)
    {
        sort(numbers.begin(), numbers.end());
        int n = 0;
        while (numbers[n] == 0)
        {
            ++n;
        }
        int zero = n;

        for (int i = n; i < 4; ++i)
        {
            if (numbers[i] != numbers[i + 1] - 1)
            {
                while (zero)
                {
                    ++numbers[i];
                    --zero;
                    if (numbers[i] == numbers[i + 1] - 1)
                        break;
                }
            }
            if (numbers[i] != numbers[i + 1] - 1)
                return false;

        }
        return true;
    }
};